package cn.kgc.spring04.staticproxy;

import cn.kgc.spring04.interfac.Teacher;
import cn.kgc.spring04.interfac.TeacherWang;

/**
 * @Author: 课工场
 * @Version: v1.0  2023/4/28
 * @Description:  教师类的静态代理类
 * 1.静态代理
 *  *   1.编写一个类 实现和被代理对象相同的接口
 *  *   2.代理对象要依赖被代理对象
 *
 *  缺点：  1. 代码冗余  2. 增加了代码的维护难度
 */
public class TeacherStaticProxy  implements Teacher {

    private TeacherWang teacherWang = new TeacherWang();

    //实现代码增强
    @Override
    public String teachOnline(String course) {
        System.out.println("------------上课时间到了--------------");
        String s = teacherWang.teachOnline(course);
        System.out.println("------------下课时间到了--------------");
        return s;
    }

    @Override
    public String teachOffline(String course) {
        System.out.println("------------上课时间到了--------------");
        String s = teacherWang.teachOffline(course);
        System.out.println("------------下课时间到了--------------");
        return s;
    }
}
